package cn.edu.dz.bank;

public class Bank {

    //属性  账户余额100元
    private  int account =100;

    //private  Object lock=new Object();同步的步骤转向bank1中
    //方法：取钱  synchronized 上锁
    public  int getMoney(int order){

        System.out.println(Thread.currentThread().getName()+
                               "正在取款。。。。。。。。。。。");

        //当账户余额大于所需要取款的金额
        if(account>=order){
            //正常取款
            System.out.println("系统正在处理。。。");
            //Math方法，产生随机数
            long m=(long)(Math.random()*2000+600);
            try{
                //线程休眠，模拟取款等待时间
               // Thread.sleep(m);
                Thread.sleep(200);
            }catch (InterruptedException e){
                e.printStackTrace();
            }

            //当前账户余额为账户金额-取款金额
            account -=order;
            //输出提示语句
            System.out.println("尊敬的"+Thread.currentThread().getName()+
                    "用户，您本次的取款金额为："+ order+"元，"+"当前账户余额为："+account+"元");
            return order;
        }else {
            //当账户余额小于所需取款的金额，提示，操作失败
            System.out.println("对不起，操作失败，账户余额不足。。。。");
            return 0;
        }
    }
}
